def finds(z):
    # 查找两个不同的整数，使它们的和为z
    is_exist = False
    for i in range(1,z+1):
        if is_exist:
            break
        for j in range(i+1,z+1):
            if i+j == z:
                is_exist = True
                x=i
                y=j
                break
    if is_exist:
        print("YES")
        print(f'{x} {y}')
    else:
        print("NO")
z = int(input())
finds(z)
'''
z // 2 + 1 是为了不重复枚举对称组合。
def finds(z):
    for i in range(1, z // 2 + 1):
        j = z - i
        if i != j:  # 要求两个数不同
            print("YES")
            print(f'{i} {j}')
            return
    print("NO")
'''
